// var prefix = ctx + "admin/user";
var prefix = "admin/user";
var editFlag, delFlag

$(function () {
//toolbar权限控制
  toolBarPermission()

  var panehHidden = false;
  if ($(this).width() < 769) {
    panehHidden = true;
  }
  $('body').layout({
    initClosed: panehHidden,
    west__size: 185
  });

  queryUserList();
  queryDeptTree();

  editFlag = permissions.sys_user_edit
  delFlag = permissions.sys_user_del
});

function queryUserList() {
  var options = {
    url: api + "/admin/user/page",
    updateUrl: "/pages/sysadm/user/userEdit",
    removeUrl: api + "/admin/user/{id}",
    exportUrl: api + "/admin/user/doExport",
    importUrl: api + "/admin/user/importData",
    importTemplateUrl: api + "/importTemplate",
    createTime: false,
    modalName: "用户",
    // queryParams: function (params) { //因为后端只有用户管理这个接口descs传参为u.create_time，所以只对这个列表重新定义queryParams
    //   var data = {
    //     size: params.limit,
    //     current: (params.offset / params.limit + 1),
    //     search: params.search,
    //     // descs: 'u.create_time',
    //   };
    //   if ($('input[name=loginname]').val()) data.loginname = $('input[name=loginname]').val()
    //   if ($('input[name=username]').val()) data.username = $('input[name=username]').val()
    //   if ($('#deptId').val()) data.deptId = $('#deptId').val()
    //   return data
    // },
    columns: [
      /*{
        checkbox: true
      },*/
      {
        field: 'userId',
        title: '用户Id',
        visible: false
      },
      {
        field: 'loginname',
        title: '登录名称',
        formatter: function (value, row, index) {
          return '<a href="javascript:$.operate.view(' + "'" + row.userId + "'" + ')">' + value + '</a>';
        },
      },
      {
        field: 'username',
        title: '用户名称'
      },
      {
        field: 'deptName',
        title: '所属部门'
      },
      {
        field: 'phone',
        title: '手机'
      },
      {
        // visible : editFlag == 'hidden' ? false : true,
        field: 'lockFlag',
        title: '用户状态',
        align: 'center',
        sortable: true,
        formatter: function (value, row, index) {
          return statusTools(row);
        }
      },
      {
        field: 'createTime',
        title: '创建时间',
        sortable: true,
      },
      {
        title: '操作',
        align: 'center',
        formatter: function (value, row, index) {
          var actions = [];
          if (editFlag) {
            actions.push('<a class="btn btn-success btn-xs" href="javascript:void(0)" onclick="$.operate.editTab(\'' + row.userId + '\')"><i class="fa fa-edit"></i>编辑</a> ');
          }
          if (delFlag) {
            actions.push('<a class="btn btn-danger btn-xs" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.userId + '\')"><i class="fa fa-remove"></i>删除</a> ');
            // var more = [];
          }
          // more.push("<a class='btn btn-default btn-xs' href='javascript:void(0)' onclick='resetPwd(" + row.userId + ")'><i class='fa fa-key'></i>重置密码</a> ");
          // more.push("<a class='btn btn-default btn-xs' href='javascript:void(0)' onclick='authRole(" + row.userId + ")'><i class='fa fa-check-square-o'></i>分配角色</a>");
          // actions.push('<a tabindex="0" class="btn btn-info btn-xs" role="button" data-container="body" data-placement="left" data-toggle="popover" data-html="true" data-trigger="hover" data-content="' + more.join('') + '"><i class="fa fa-chevron-circle-right"></i>更多操作</a>');
          return actions.join('');
        }
      }]
  };
  $.table.init(options);
}

function queryDeptTree() {
  var url = api + "/admin/dept/tree";
  var options = {
    url: url,
    expandLevel: 1,
    onClick: zOnClick
  };
  $.tree.init(options);

  function zOnClick(event, treeId, treeNode) {
    $("#deptId").val(treeNode.id);
    $.table.search();
  }
}

$('#btnExpand').click(function () {
  $._tree.expandAll(true);
  $(this).hide();
  $('#btnCollapse').show();
});

$('#btnCollapse').click(function () {
  $._tree.expandAll(false);
  $(this).hide();
  $('#btnExpand').show();
});

$('#btnRefresh').click(function () {
  queryDeptTree();
  $("#deptId").val('');
  $.table.search();
});

/* 用户管理-重置密码 */
function resetPwd(userId) {
  var url = '/pages/sysadm/user/resetPwd';
  $.modal.open("重置密码", url, '800', '300');
}

/* 用户管理-分配角色 */
function authRole(userId) {
  var url = prefix + '/authRole/' + userId;
  $.modal.openTab("用户分配角色", url);
}

/* 用户状态显示 */
function statusTools(row) {
  // if (row.lockFlag == 9) {
  //   return '<i class=\"fa fa-toggle-off text-info fa-2x\" onclick="enable(\''
  //     + row.userId + '\')"></i> ';
  // } else {
  //   return '<i class=\"fa fa-toggle-on text-info fa-2x\" onclick="disable(\''
  //     + row.userId + '\')"></i> ';
  // }
  if (row.lockFlag == 9) {
    return '<i class=\"fa text-danger\">锁定</i> ';
  } else {
    return '<i class=\"fa text-info\">有效</i> ';
  }
}

/* 用户管理-停用 */
function disable(userId) {
  $.modal.confirm("确认要停用用户吗？", function () {
    $.operate.post(prefix + "/changeStatus", {
      "userId": userId,
      "lockFlag": 9
    });
  })
}

/* 用户管理启用 */
function enable(userId) {
  $.modal.confirm("确认要启用用户吗？", function () {
    $.operate.post(prefix + "/changeStatus", {
      "userId": userId,
      "lockFlag": 0
    });
  })
}

function importTemplate(){
  window.location.href = '/static/file/用户数据.xlsx'
}
